import { IconIconifyPropsType } from '../SIconIconify'
import { IconIconifyOfflinePropsType } from '../SIconIconifyOffline'
import { IconTextPropsType } from '../SIconText'
import { IconLinkPropsType } from '../SIconLink'
import { IconUnicodePropsType } from '../SIconUnicode'
import { IconFontClassPropsType } from '../SIconFontClass'
import { IconSymbolPropsType } from '../SIconSymbol'
import { IconTypeConst } from './consts'

export const IconTypeConstType_Name = 'IconTypeConstType'
export const IconPropsType_Name = 'IconPropsType'

export type IconTypeConstType = (typeof IconTypeConst)[keyof typeof IconTypeConst]

export type IconPropsType = {
  // 图标类型
  iconType?: IconTypeConstType
  // 图标组件 Props
  iconProps?:
    | IconIconifyPropsType
    | IconIconifyOfflinePropsType
    | IconTextPropsType
    | IconLinkPropsType
    | IconUnicodePropsType
    | IconFontClassPropsType
    | IconSymbolPropsType
}
